package com.yfp.operation.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import jakarta.validation.constraints.NotNull;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;

/**
 * @TableName device_current_combo_plan_road
 */
@TableName(value = "device_current_combo_plan_road")
@Data
public class DeviceCurrentComboPlanRoadDO implements Serializable {
    /**
     * id
     */
//    @TableId
    @Schema(description = "id")
    @TableId
    private String id;

    /**
     * 套餐计划id
     */
    @Schema(description = "套餐计划id")
    private String cPlanId;

    /**
     * 投放计划中对应的日期
     */
    @Schema(description = "投放计划中对应的日期")
    private Timestamp date;

    /**
     * 设备的id
     */
    @NotNull(message = "设备id不能为空")
    @Schema(description = "设备的id")
    private String machineId;

    /**
     * 货道号
     */
    @NotNull(message = "货道号不能为空")
    @Schema(description = "货道号")
    private String roadNumber;

    /**
     * 套餐id
     */
    @Schema(description = "套餐id")
    private String comboId;

    /**
     * 套餐数量
     */
    @NotNull(message = "套餐数量不能为空")
    @Schema(description = "套餐数量")
    private String comboNum;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    private Date createTime;

    /**
     * 更新时间
     */
    @Schema(description = "更新时间")
    private Timestamp updateTime;

    /**
     * 套餐名称
     */
    @TableField(exist = false)
    @Schema(description = "套餐名称")
    private String comboName;

    /**
     * 设备类型
     */
    @TableField(exist = false)
    @Schema(description = "设备类型  1二代机  2三代机")
    private Integer machineType;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}